package week3;

import base.TreeNode;

/**
 *
 * 104. 二叉树的最大深度
 * https://leetcode-cn.com/problems/maximum-depth-of-binary-tree/
 *
 *
 * 执行结果：  通过  显示详情
 *
 * 添加备注
 * 执行用时：0 ms, 在所有 Java 提交中击败了100.00% 的用户
 * 内存消耗：38.4 MB, 在所有 Java 提交中击败了34.94% 的用户
 *
 *
 */
public class Week3MaximumDepthOfBinaryTree {

    public int maxDepth(TreeNode root) {
        if(root == null) {
            return 0;
        } else {
            // 左子树 最大深度
            int leftDepth = maxDepth(root.left);
            // 右子树最大深度
            int rightDepth = maxDepth(root.right);
            // 最终 最大深度
            int maxDepth = Math.max(leftDepth, rightDepth) + 1;
            return maxDepth;
        }
    }

}
